home *** CD-ROM | disk | FTP | other *** search
/ Amiga Tools 2 / Amiga Tools 2.iso / hardware / vector-connection / development / includes / vector / vectorser.h < prev    next >
C/C++ Source or Header  |  1995-03-09  |  2KB  |  160 lines

  1. //
  2. // $Header$
  3. //
  4. //
  5.  
  6. //
  7. // $Log$
  8. //
  9. //
  10.  
  11. //
  12. // vectorser.device - serial device for the HK Vector Connection board
  13. //
  14. // © 1994 Henning Schmiedehausen - The Software Forge
  15. //
  16. //
  17.  
  18. #ifndef DEVICES_VECTORSER_H
  19. #define DEVICES_VECTORSER_H
  20.  
  21. /*
  22.  * Commands
  23.  */
  24.  
  25. #define        VSCMD_SETCTRLLINES    (CMD_NONSTD+7)    /* 0x10 ADSG-compatible */
  26.  
  27. #define        VSCMD_END            VSCMD_SETCTRLLINES
  28.  
  29. #define VECTORSERNAME     "vectorser.device"
  30.  
  31. #define        VSIOCTLB_RTS  0
  32. #define        VSIOCTLB_DTR  1
  33.  
  34. #define        VSIOCTLF_RTS  (1<<VSIOCTLB_RTS)
  35. #define        VSIOCTLF_DTR  (1<<VSIOCTLB_DTR)
  36.  
  37. /*
  38.  * co_query
  39.  */
  40.  
  41. #define        QUB_DSR                3
  42. #define        QUB_CTS                4
  43. #define        QUB_CD                5
  44. #define        QUB_RTS                6
  45. #define        QUB_DTR                7
  46.  
  47. #define        QUF_DSR                (1L<<QUB_DSR)
  48. #define        QUF_CTS                (1L<<QUB_CTS)
  49. #define        QUF_CD                (1L<<QUB_CD)
  50. #define        QUF_RTS                (1L<<QUB_RTS)
  51. #define        QUF_DTR                (1L<<QUB_DTR)
  52.  
  53. struct duart_read
  54. {
  55.     UBYTE     mra;
  56.     UBYTE     _pad0;
  57.     UBYTE     sra;
  58.     UBYTE     _pad1;
  59.     UBYTE     _pad2;
  60.     UBYTE     _pad3;
  61.     UBYTE     rhra;
  62.     UBYTE     _pad4;
  63.     UBYTE     ipcr;
  64.     UBYTE     _pad5;
  65.     UBYTE     isr;
  66.     UBYTE     _pad6;
  67.     UBYTE     ctu;
  68.     UBYTE     _pad7;
  69.     UBYTE     ctl;
  70.     UBYTE     _pad8;
  71.     UBYTE     mrb;
  72.     UBYTE     _pad9;
  73.     UBYTE     srb;
  74.     UBYTE     _pad10;
  75.     UBYTE     _pad11;
  76.     UBYTE     _pad12;
  77.     UBYTE     rhrb;
  78.     UBYTE     _pad13;
  79.     UBYTE     ivr;
  80.     UBYTE     _pad14;
  81.     UBYTE     ip;
  82.     UBYTE     _pad15;
  83.     UBYTE     strt;
  84.     UBYTE     _pad16;
  85.     UBYTE     stop;
  86. };
  87.  
  88. struct duart_write
  89. {
  90.     UBYTE     mra;
  91.     UBYTE     _pad0;
  92.     UBYTE     csra;
  93.     UBYTE     _pad1;
  94.     UBYTE      cra;
  95.     UBYTE     _pad3;
  96.     UBYTE     thra;
  97.     UBYTE     _pad4;
  98.     UBYTE     acr;
  99.     UBYTE     _pad5;
  100.     UBYTE     imr;
  101.     UBYTE     _pad6;
  102.     UBYTE     ctur;
  103.     UBYTE     _pad7;
  104.     UBYTE     ctlr;
  105.     UBYTE     _pad8;
  106.     UBYTE     mrb;
  107.     UBYTE     _pad9;
  108.     UBYTE     csrb;
  109.     UBYTE     _pad10;
  110.     UBYTE     crb;
  111.     UBYTE     _pad12;
  112.     UBYTE     thrb;
  113.     UBYTE     _pad13;
  114.     UBYTE     ivr;
  115.     UBYTE     _pad14;
  116.     UBYTE     opcr;
  117.     UBYTE     _pad15;
  118.     UBYTE     setop;
  119.     UBYTE     _pad16;
  120.     UBYTE     clrop;
  121. };
  122.  
  123. struct dc_read
  124. {
  125.     UBYTE     mr;
  126.     UBYTE     _pad0;
  127.     UBYTE     sr;
  128.     UBYTE     _pad1;
  129.     UBYTE     _pad2;
  130.     UBYTE     _pad3;
  131.     UBYTE     rhr;
  132. };
  133.  
  134. struct dc_write
  135. {
  136.     UBYTE     mr;
  137.     UBYTE     _pad0;
  138.     UBYTE     csr;
  139.     UBYTE     _pad1;
  140.     UBYTE      cr;
  141.     UBYTE     _pad3;
  142.     UBYTE     thr;
  143. };
  144.  
  145.  
  146. union duart
  147. {
  148.     struct duart_read    rd;
  149.     struct duart_write    wr;
  150. };
  151.  
  152. union dchannel
  153. {
  154.     struct dc_read    rd;
  155.     struct dc_write    wr;
  156. };
  157.  
  158.  
  159. #endif /* DEVICES_VECTORSER_H */
  160.